/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package braipetro.client.base;


import braipetro.data_access.DataSet;
import java.awt.Frame;
import java.util.LinkedList;
import java.util.List;
import javax.swing.JComponent;

/**
 *
 * @author manasses
 */
public class FrmBaseDet extends FrmBase {
    
    private List<DataBinding> bindings = new LinkedList<DataBinding>();
    
    /**
     * Creates new form FrmBaseDet
     * @param parent
     * @param modal
     */
    public FrmBaseDet(FrmBase parent, boolean modal) {
        super(parent, modal);
        initComponents();   
    }
    
    public FrmBaseDet(FrmBase parent, boolean modal, DataSet dataSet) {
        super(parent, modal, dataSet);
        initComponents();
   
    }
    
    public void addBinding(JComponent cmp, String field) {
        DataBinding dtb = new DataBinding(this);
        dtb.setCmp(cmp);
        dtb.setField(field);
        
        bindings.add(dtb);
    }
    
    public void addBinding(JComponent cmp, String field, String tableSource, String keySource, String labelSource) {
        DataBinding dtb = new DataBinding(this);
        dtb.setCmp(cmp);
        dtb.setField(field);
        dtb.setTableSource(tableSource);
        dtb.setKeySource(keySource);
        dtb.setLabelSource(labelSource);
        
        dtb.populateComponent();
        
        bindings.add(dtb);
    }
    
    public List<DataBinding> getBindings() {
        return bindings;
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

   

    // Variables declaration - do not modify//GEN-BEGIN:variables
    // End of variables declaration//GEN-END:variables
}
